package cn.com.jinhao.provider.user.vo;

import cn.com.jinhao.provider.user.entity.Role;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * HotLine
 * <p>Description: 路由新增参数类 </p>
 *
 * @author ShaneMew
 * @version 1.0
 * @date 2020-03-04
 * @since 2020-03-04
 */

@Data
@ApiModel(value = "MenuRequestVO", description = "用户路由信息")
public class MenuRequestVO {
    /**
     * 父路由
     */
    @ApiModelProperty( value = "父路由")
    @NotNull
    private String pid;

    /**
     * 父路由名称
     */
    @ApiModelProperty( value = "父路由名称")
    @NotNull
    private String pname;

    /**
     * 路由地址
     */
    @ApiModelProperty( value = "当前路由的地址")
    @NotEmpty
    private String path;

    /**
     * 路由名称
     */
    @ApiModelProperty( value = "当前路由的name")
    private String name;

    /**
     * 别名
     */
    @ApiModelProperty( value = "路由别名")
    private String alias;

    /**
     * 重定向地址
     */
    @ApiModelProperty( value = "重定向地址")
    private String redirect;

    /**
     * 组件
     */
    @ApiModelProperty (value = "当前路由的默认组件路径")
    @NotEmpty
    private String component;

    /**
     * 是否菜单中显示
     */
    @ApiModelProperty(value =  "是否菜单中显示", allowableValues = "false,true")
    private boolean showupinmenu = true;

    /**
     * META
     */
    @ApiModelProperty(value = "META信息")
    @NotEmpty
    private String meta;

    /**
     * 按钮
     */
    @ApiModelProperty( value = "按钮")
    private String btns;

    /**
     * 角色列表
     */
    @ApiModelProperty( value = "角色列表")
    @NotNull
    List<String> roles;
}
